Skip to content

Derive the respiratory-chain kcats from the data, and compare with the Xia et al. (2022) series - #15

Draft
edkerk wants to merge 11 commits into
masterfrom
feat/xia2022-dataset
Draft

edkerk wants to merge 11 commits into
masterfrom
feat/xia2022-dataset

Conversation

@edkerk

@edkerk edkerk commented Oct 13, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Rebuilds this study's results with respiratory-chain kcats derived from the data and with enzyme complexes treated as one unit. Then runs the same analysis, for comparison, on the glucose-limited chemostat series of Xia et al. (2022): eight conditions from μ = 0.027 to 0.379 h⁻¹, of which μ0.33 and μ0.38 secrete ethanol.

From proteomics to enzyme caps (overflow.complexes, overflow.flexibilize):

  1. Complex levelling. Each complex gets one abundance: the median per copy over its measured subunits. Proteins that serve several complexes or also work alone keep their own measurement.
  2. Minimum usage. A complex the model cannot run at the dilution rate for less than its measured abundance is raised to what it needs.
  3. Reaching the dilution rate. One LP finds the least relaxation that reaches the dilution rate: it minimises the summed fold increases of the measured caps, one per complex, and lets the protein pool grow at 1000 times that price.
  4. Measured rates. The same LP, run under the measured exchange rates, makes the least further relaxation that reproduces them.

Respiratory-chain kcats (overflow.respiratory_kcats, a new step): for complex III, complex IV and ATP synthase, the apparent turnover in each condition is the sampled flux (conventional model at the measured rates, no kcats) over the levelled complex abundance. The highest across a dataset's conditions becomes the kcat, which overflow.build --respiratory-kcats applies to every isozyme variant. No other kcat changes.

Derived kcat (1/s) This study Xia et al. 2022 ecModel
Complex III 1452 (CN75) 427 (μ0.38) 290
Complex IV 3242 (CN75) 1090 (μ0.38) 1376
ATP synthase 1608 (CN75) 447 (μ0.38) 85

The condition that sets a kcat runs that complex at full capacity, so each derived kcat is a lower bound, and capacity usage of the respiratory chain is relative to the busiest condition of the same dataset.

Running the Xia series. The series is built with GAM 55.3, as this study, and with the measured rates held within 16% in the build and in sampling (8% and 5% in this study). Its measured O2 uptake exceeds what complete oxidation of its measured glucose consumes by 7–46%, and holding growth, glucose, CO2 and O2 together needs a band of up to 15.4% (μ0.15). The series' μ = 0.044 condition is not included.

Files

  • results/: this study, rebuilt (sampling unchanged). The build summary gains the modelled ethanol rate.
  • literature/xia2022/:
    • the series in the pipeline's formats (data/, scripts/prepare_data.py, with Ptot from Supplementary Table 6);
    • a wrapper that runs any step on it (scripts/run_step.py);
    • the outputs of its run that the comparison reads, with its own derived kcats;
    • comparison/, with six figures and six tables covering both datasets.
  • overflow.run_sampling --rate-tolerance sets the band around the measured rates in sampling.

Results

The respiratory limit of a condition is the highest glucose uptake its measured proteome can respire completely at the condition's growth rate. Above it, the model has to secrete overflow carbon. Caps the build raised, in any of its steps, show that the measurement understates what the condition needs and are lifted for this analysis.

Condition D [1/h] Measured glucose Measured ethanol Respiratory limit Respiratory-chain usage
CN4 0.10 1.12 – 1.95 20%
CN22 0.10 1.48 – 1.57 31%
CN38 0.10 2.01 0.79 2.13 45%
CN75 0.10 3.23 2.28 2.19 86%
hGR 0.29 5.42 3.68 3.94 68%
μ0.03 0.027 0.33 – 1.14 13%
μ0.10 0.10 1.14 – 2.09 34%
μ0.15 0.15 1.60 – 3.23 37%
μ0.21 0.21 2.37 – 3.30 71%
μ0.25 0.25 2.71 – 3.88 61%
μ0.28 0.28 3.14 – 4.32 67%
μ0.33 0.33 4.88 2.19 5.06 67%
μ0.38 0.38 6.71 5.83 5.06 83%

Glucose and ethanol in mmol/gDW/h. Respiratory-chain usage: enzyme mass used over the measured capacity of its enzymes. CN: this study; μ: Xia et al. (2022).

  • Respiratory-chain usage at D = 0.1 (CN4 20%, μ0.10 34%). The difference is not in the respiratory flux, which is the same in both: complex III carries 5.6 and 5.5 mmol/gDW/h. The Xia series measures more of each complex at μ0.10 than this study does at CN4: 2.3× complex III, 1.4× complex IV and 2.2× ATP synthase. Its complexes therefore turn over less than half as fast, but usage is expressed against each dataset's own busiest condition, and the busiest Xia condition (μ0.38) turns over 3.0–3.6 times slower than CN75. With this study's kcats applied to the Xia series, μ0.10 uses 10.6% of its respiratory chain (0.47 of 4.42 mg/gDW), against 19.7% at CN4 (0.46 of 2.32 mg/gDW): the same enzyme mass over twice the measured capacity.
  • hGR stays the single condition at D = 0.29: it is the average of chemostats at 0.26 and 0.32 h⁻¹, which are not available separately.
  • The last condition before overflow: CN22 and μ0.28. Both respire all their glucose and are the fastest of their series to do so.
    • CN22 takes up 1.48 of a 1.57 limit (94%). The limit is set by succinate dehydrogenase: raising its cap 1.2-fold raises the limit by 11%, while raising the whole respiratory chain 1000-fold leaves it unchanged. CN22 also secretes formate (0.05 mmol/gDW/h), the one condition without ethanol that has a C1 overflow.
    • μ0.28 takes up 3.14 of a 4.32 limit (73%). No single complex sets that limit: raising the respiratory chain or the TCA cycle 1000-fold leaves it unchanged, lifting RPE1 or glycolysis raises it by 5.4%, and raising every measured cap 1.2-fold raises it by 16%. Its respiratory chain turns over at 0.74–0.76 of the series' maximum. The series does not report formate, so a C1 overflow cannot be compared.
  • When overflow starts. Conditions without ethanol take up 29–94% of their limit, and CN75, hGR and μ0.38 take up 1.3–1.5 times theirs. Three conditions sit at their limit, within 6% and inside the band around the measured rates: CN22 (94%) without ethanol, and CN38 (94%) and μ0.33 (96%) with it. In this study the measured onset of overflow lies at a glucose uptake of 2.0 ± 0.3, where the limits of CN38 (2.13) and CN75 (2.19) fall. At fast growth, μ0.33 and μ0.38 share one limit, 5.06, set by complex IV; μ0.33 takes up just under what it can respire while μ0.38 takes up a third more. As each dataset's kcats are its own highest apparent turnover, this is a consistency check rather than an independent test.
  • ATP supply. The respiratory share of ATP is 84–87% in every condition without ethanol and at CN38, and falls as ethanol rises: 81% at CN75 and μ0.33, 74% at hGR and 73.5% at μ0.38.

The figures and tables are in literature/xia2022/comparison/.

…compare

Adds literature/xia2022: the series converted to the pipeline's formats, a
wrapper that runs any step on it, its results, a coverage check with the
abundances rescaled to the main data's measured fraction of Ptot, and a
comparison with results/, including the glucose uptake at which each
proteome forces overflow.
The highest glucose uptake a measured proteome can respire completely at
the condition's growth rate is a model prediction; onset of overflow is
kept for the measured physiology.
Building the conditions one at a time left only the last one in
summary.tsv; the build now replaces its own rows and keeps the others.
summary.tsv is restored to all five conditions.
…puts the comparison uses

The coverage check keeps its build tables and median capacity usage; its
sampling repeated the series' sampling, which does not use abundances.
Per-run respiratory limits and the rescaled data are regenerated and no
longer committed, and figures are PDF only.
The kcats of complex III, complex IV and ATP synthase are set to the
highest apparent turnover across a dataset's conditions (sampled flux
over measured complex) by the new respiratory_kcats step, and the build
applies them with --respiratory-kcats. results/ and the Xia series are
rebuilt with them; capacity usage per system is reported mass-weighted;
the coverage check is removed.
@edkerk edkerk changed the title Run the analysis on the Xia et al. (2022) chemostat series and compare Derive the respiratory-chain kcats from the data, and compare with the Xia et al. (2022) series Oct 14, 2026
Each complex gets one abundance (median per copy over its measured
subunits), the minimum-usage pass and the rate fit raise whole complexes,
and the relaxation to the dilution rate is one LP minimising summed folds
of the measured caps and the protein pool. The respiratory-limit analysis
lifts relaxed caps per complex and leaves glycine export open. Results and
figures are rebuilt.
All conditions of the chemostat series but μ = 0.044 (mu003, mu010,
mu015, mu021, mu025, mu028, mu033, mu038), with Ptot per condition from
Supplementary Table 6 written into prepare_data.py. The series is built
and sampled with a 16% rate band and glucose uptake capped at 1.14x
measured; run_sampling gains --rate-tolerance for this. GAM stays at the
model's 55.3 for both datasets. Results, tables and figures are rebuilt,
and the READMEs describe the eight-condition run.
The build summary records the modelled ethanol rate, and Table 1 takes
the modelled exchange rates from it instead of the per-condition flux
distributions. Those distributions, the ribosome tables and the
pipeline's own usage figures of the Xia run are no longer committed.
Caps raised by the rate fit are lifted like those raised to reach the
dilution rate: any raise shows that the measurement understates what the
condition needs. The "lifted" variant replaces "built" and gives every
condition a limit; "measured" stays as the conservative bound.
The series now runs on nine conditions. μ0.044 (S4–S6, Ptot 0.312) was
sampled, built and analysed on its own; the respiratory-chain kcats, set
by μ0.38, are unchanged, so the other conditions keep their models.

Table 7 adds the physiology from the measured rates (yield, O2 per
glucose, RQ, formate, carbon balance) and marker proteins for nitrogen
limitation, C1 metabolism, the TCA cycle and storage. The README reads it
for what triggers overflow in CN22 and μ0.28, and why only the
nitrogen-limited conditions secrete formate.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant